package com.bls.cate.mob;

import com.mob.tools.proguard.PublicMemberKeeper;
import com.mob.ums.OperationCallback;
import com.mob.ums.UMSSDK;

/**
 * 　　  () 　　　  ()
 * 　　  ( ) 　　　( )
 * 　　  ( ) 　　　( )
 * 　　┏┛┻━━━┛┻┓
 * 　　┃　　　━　　　┃
 * 　　┃　┳┛　┗┳　┃
 * 　　┃　　　┻　　　┃
 * 　　┗━┓　　　┏━┛
 * 　　　　┃　　　┃
 * 　　　　┃　　　┗━━━┓
 * 　　　　┃　　　　　　　┣┓
 * 　　　　┃　　　　　　　┏┛
 * 　　　　┗┓┓┏━┳┓┏┛
 * 　　　　　┃┫┫　┃┫┫
 * 　　　　　┗┻┛　┗┻┛
 * ——————————————————
 * Created by BinglingSu on 2017/12/22.
 */
@SuppressWarnings("unchecked")
public class MobUMSPort {

    /*private volatile static MobUMSPort instance = null;
    private MobUMSPort() {

    }
    public static MobUMSPort getInstance() {
        if (instance == null) {
            synchronized (MobUMSPort.class) {
                instance = new MobUMSPort();
            }
        }
        return instance;
    }*/


    /**
     * 注册用户发送验证码
     *
     * @param country 国家
     * @param phone   手机号
     */
    public static void sendVerifyCodeForRegister(String country, String phone, final int flag, final MobOperationCallback mobOperationCallback) {
        UMSSDK.sendVerifyCodeForRegitser(country, phone, new OperationCallback<Boolean>() {
            @Override
            public void onSuccess(Boolean aBoolean) {
                super.onSuccess(aBoolean);
                mobOperationCallback.onMobSuccess(aBoolean, flag);
            }

            @Override
            public void onCancel() {
                super.onCancel();
            }

            @Override
            public void onFailed(Throwable throwable) {
                super.onFailed(throwable);
                mobOperationCallback.onMobFailed(throwable, flag);
            }
        });
    }


    public interface MobOperationCallback<T> {
        void onMobSuccess(T var1, int flag);

        void onMobFailed(Throwable var1, int flag);
    }
}
